Razor এর সাথে HTML এবং CSS ইন্টিগ্রেশন

Web Development - এএসপি ডট (ASP.Net) - ASP.Net এর Razor Syntax |

Razor হল একটি view engine যা ASP.Net MVC এবং ASP.Net Core অ্যাপ্লিকেশনগুলিতে ডায়নামিক HTML তৈরি করতে ব্যবহৃত হয়। Razor-এর মাধ্যমে আপনি C# কোডকে HTML-এর সাথে সহজে একত্রিত করতে পারেন, যার ফলে আপনি ডায়নামিকভাবে ডেটা প্রদর্শন করতে এবং ইন্টারঅ্যাকটিভ ওয়েব পেজ তৈরি করতে পারেন। Razor HTML এবং CSS-এর সাথে সহজেই ইন্টিগ্রেট করা যায়, যা ASP.Net অ্যাপ্লিকেশনগুলিকে আরও গতিশীল এবং ব্যবহারকারী-বান্ধব করে তোলে।


Razor এবং HTML/CSS ইন্টিগ্রেশন

Razor এবং HTML এর সংমিশ্রণ

Razor কোড HTML এর মধ্যে এম্বেড করা হয়। এটি সাধারণত @ সাইন দ্বারা চিহ্নিত হয়, যা C# কোডের ইনপুট বা আউটপুট প্রকাশ করে। এখানে একটি উদাহরণ দেওয়া হলো যেখানে Razor কোড HTML-এর মধ্যে ব্যবহার করা হচ্ছে:

উদাহরণ: Razor এবং HTML একত্রিত করা
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Razor with HTML</title>
</head>
<body>
    <h1>@ViewData["Title"]</h1>
    <p>Today's date is: @DateTime.Now.ToString("dd-MM-yyyy")</p>
</body>
</html>

এখানে @ViewData["Title"] এবং @DateTime.Now.ToString("dd-MM-yyyy") Razor কোড HTML-এর মধ্যে এম্বেড করা হয়েছে। @ViewData হল একটি dictionary যা কন্ট্রোলার থেকে ভিউতে ডেটা পাঠাতে ব্যবহৃত হয়।

Razor এবং CSS এর সংমিশ্রণ

Razor ভিউতে CSS সংযোজন করার জন্য, আপনি সাধারণ HTML <link> ট্যাগ ব্যবহার করতে পারেন যেটি আপনার CSS ফাইলকে লিঙ্ক করে। এটি আপনি wwwroot ফোল্ডারে রাখবেন (যেখানে সমস্ত স্ট্যাটিক ফাইল রাখা হয়)।

উদাহরণ: Razor এবং CSS একত্রিত করা
  1. CSS ফাইল তৈরি করা:

    • প্রথমে wwwroot/css ফোল্ডারে একটি CSS ফাইল তৈরি করুন, যেমন styles.css

    styles.css:

    body {
        font-family: Arial, sans-serif;
        background-color: #f0f0f0;
    }
    
    h1 {
        color: #333;
    }
    
  2. CSS ফাইল Razor ভিউতে যুক্ত করা:

    • Razor ভিউতে CSS ফাইলটি <link> ট্যাগের মাধ্যমে যুক্ত করুন।

    Razor View (Index.cshtml):

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Razor with HTML and CSS</title>
        <link rel="stylesheet" href="~/css/styles.css">
    </head>
    <body>
        <h1>@ViewData["Title"]</h1>
        <p>Today's date is: @DateTime.Now.ToString("dd-MM-yyyy")</p>
    </body>
    </html>
    

এখানে href="~/css/styles.css" Razor সিনট্যাক্স দ্বারা wwwroot/css/styles.css ফাইলটি সঠিকভাবে যুক্ত করা হয়েছে।


Razor এবং CSS ইনলাইন স্টাইল

আপনি Razor ভিউতে CSS এর ইনলাইন স্টাইলও ব্যবহার করতে পারেন। এতে প্রতিটি HTML ট্যাগের মধ্যে সরাসরি স্টাইল প্রয়োগ করা হয়। উদাহরণ:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Razor with Inline CSS</title>
</head>
<body style="background-color: #f0f0f0; font-family: Arial, sans-serif;">
    <h1 style="color: #333;">@ViewData["Title"]</h1>
    <p>Today's date is: @DateTime.Now.ToString("dd-MM-yyyy")</p>
</body>
</html>

এখানে style="background-color: #f0f0f0;" CSS কোড সরাসরি HTML ট্যাগে ব্যবহৃত হয়েছে।


Razor এবং CSS এর মধ্যে কাস্টম ডাইনামিক ক্লাস অ্যাসাইনমেন্ট

Razor ব্যবহার করে আপনি CSS ক্লাসগুলোকে ডায়নামিকভাবে অ্যাসাইন করতে পারেন, অর্থাৎ, আপনি কোডের মাধ্যমে CSS ক্লাস যুক্ত বা পরিবর্তন করতে পারেন।

উদাহরণ: Razor এবং ডাইনামিক CSS ক্লাস অ্যাসাইনমেন্ট
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Razor with Dynamic CSS</title>
    <link rel="stylesheet" href="~/css/styles.css">
</head>
<body>
    <h1 class="@ViewData["TitleClass"]">@ViewData["Title"]</h1>
    <p>Today's date is: @DateTime.Now.ToString("dd-MM-yyyy")</p>
</body>
</html>

এখানে, @ViewData["TitleClass"] Razor কোড ব্যবহার করে class অ্যাট্রিবিউট ডাইনামিকভাবে সেট করা হয়েছে। আপনি কন্ট্রোলার থেকে ডাইনামিক CSS ক্লাস পাঠাতে পারেন:

public IActionResult Index()
{
    ViewData["Title"] = "Welcome to Razor!";
    ViewData["TitleClass"] = "highlight";  // CSS ক্লাসের নাম
    return View();
}

এখানে highlight CSS ক্লাসটি Razor ভিউতে ডায়নামিকভাবে অ্যাসাইন করা হয়েছে।


Razor এবং CSS মিডিয়া কোয়ারি

CSS মিডিয়া কোয়ারি ব্যবহার করে আপনি ভিউতে বিভিন্ন স্ক্রীন সাইজের জন্য আলাদা স্টাইল প্রয়োগ করতে পারেন। Razor ভিউতে মিডিয়া কোয়ারি কাস্টমাইজেশনও করা সম্ভব।

উদাহরণ: Razor এবং মিডিয়া কোয়ারি
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Razor with Media Queries</title>
    <link rel="stylesheet" href="~/css/styles.css">
</head>
<body>
    <h1>@ViewData["Title"]</h1>
    <p>Today's date is: @DateTime.Now.ToString("dd-MM-yyyy")</p>

    <style>
        @media only screen and (max-width: 600px) {
            body {
                background-color: lightblue;
            }
        }
    </style>
</body>
</html>

এখানে @media only screen and (max-width: 600px) CSS মিডিয়া কোয়ারি ব্যবহার করা হয়েছে, যা স্ক্রীনের আকারের উপর ভিত্তি করে স্টাইল পরিবর্তন করে।


সারাংশ

  • Razor ব্যবহার করে HTML এবং CSS ইন্টিগ্রেট করা খুবই সহজ এবং কার্যকর। Razor সিনট্যাক্সের মাধ্যমে ডায়নামিক HTML তৈরি করা যায়, এবং HTML এবং CSS এর সাথে Razor কোড সংযুক্ত করা যায়।
  • আপনি Razor ভিউতে স্ট্যাটিক বা ইনলাইন CSS স্টাইল ব্যবহার করতে পারেন, অথবা ডাইনামিকভাবে CSS ক্লাস এবং মিডিয়া কোয়ারি ব্যবহার করে ভিউ কাস্টমাইজ করতে পারেন।
  • Razor এবং CSS একত্রিত করে আপনি আরও সুন্দর এবং ইন্টারঅ্যাকটিভ ওয়েব পেজ তৈরি করতে পারেন।
Content added By
Promotion